//base64.h
//base64编/解码
//Author: louObaichu
#include "../common/include/std.h"

int BASE64_Encode(const STD_BUFFER &bufIn, string& strOut);
int BASE64_Decode(const string& strIn, STD_BUFFER& bufOut);

int BASE64_Encode(const BYTE* data, int iLenIn, OUT char* pcOut, int& iLenOut);
/*base64编码
参数：
data		输入数据。
iLenIn		输入数据长度（字节）。
pcOut		输出数据（编码后的结果）。
iLenOut		I/O 输出数据最大长度（字节），输出pcOut的实际长度。

返回值：0成功，其它值失败。

说明：如果成功，不会在pcOutput末尾添加0结束；如果失败，iLenOut的值无意义。
*/

int BASE64_Decode(const char* data, int iLenIn, OUT BYTE* pOut, int& iLenOut);
/*base64解码
参数：
data		输入数据。
iLenIn		输入数据长度（字节）。
pOut		输出数据（解码后的结果）。
iLenOut		I/O 输出数据最大长度（字节），输出pcOut的实际长度。

返回值：0成功，其它值失败。

说明：如果失败，iLenOut的值无意义。
*/
